/**
 * Author: Dmitry Ustimov
 * Date: 5/31/13
 * Time: 8:12 PM
 */

package com.gmail.dmitryustimov.ms.java7.mediator.mod.work.demo.col10event10;

import com.gmail.dmitryustimov.ms.java7.patternslib.mediator.Colleague;
import com.gmail.dmitryustimov.ms.java7.patternslib.mediator.EventPublisher;

public abstract class AbstractColleague implements Colleague {

    protected String name;

    protected EventPublisher<Event1> event1Publisher = new EventPublisher<>();
    protected EventPublisher<Event2> event2Publisher = new EventPublisher<>();
    protected EventPublisher<Event3> event3Publisher = new EventPublisher<>();
    protected EventPublisher<Event4> event4Publisher = new EventPublisher<>();
    protected EventPublisher<Event5> event5Publisher = new EventPublisher<>();
    protected EventPublisher<Event6> event6Publisher = new EventPublisher<>();
    protected EventPublisher<Event7> event7Publisher = new EventPublisher<>();
    protected EventPublisher<Event8> event8Publisher = new EventPublisher<>();
    protected EventPublisher<Event9> event9Publisher = new EventPublisher<>();
    protected EventPublisher<Event10> event10Publisher = new EventPublisher<>();

    public abstract void makeEvent();

    public EventPublisher<Event1> getEvent1Publisher() {
        return event1Publisher;
    }

    public void setEvent1Publisher(EventPublisher<Event1> event1Publisher) {
        this.event1Publisher = event1Publisher;
    }

    public EventPublisher<Event2> getEvent2Publisher() {
        return event2Publisher;
    }

    public void setEvent2Publisher(EventPublisher<Event2> event2Publisher) {
        this.event2Publisher = event2Publisher;
    }

    public EventPublisher<Event3> getEvent3Publisher() {
        return event3Publisher;
    }

    public void setEvent3Publisher(EventPublisher<Event3> event3Publisher) {
        this.event3Publisher = event3Publisher;
    }

    public EventPublisher<Event4> getEvent4Publisher() {
        return event4Publisher;
    }

    public void setEvent4Publisher(EventPublisher<Event4> event4Publisher) {
        this.event4Publisher = event4Publisher;
    }

    public EventPublisher<Event5> getEvent5Publisher() {
        return event5Publisher;
    }

    public void setEvent5Publisher(EventPublisher<Event5> event5Publisher) {
        this.event5Publisher = event5Publisher;
    }

    public EventPublisher<Event6> getEvent6Publisher() {
        return event6Publisher;
    }

    public void setEvent6Publisher(EventPublisher<Event6> event6Publisher) {
        this.event6Publisher = event6Publisher;
    }

    public EventPublisher<Event7> getEvent7Publisher() {
        return event7Publisher;
    }

    public void setEvent7Publisher(EventPublisher<Event7> event7Publisher) {
        this.event7Publisher = event7Publisher;
    }

    public EventPublisher<Event8> getEvent8Publisher() {
        return event8Publisher;
    }

    public void setEvent8Publisher(EventPublisher<Event8> event8Publisher) {
        this.event8Publisher = event8Publisher;
    }

    public EventPublisher<Event9> getEvent9Publisher() {
        return event9Publisher;
    }

    public void setEvent9Publisher(EventPublisher<Event9> event9Publisher) {
        this.event9Publisher = event9Publisher;
    }

    public EventPublisher<Event10> getEvent10Publisher() {
        return event10Publisher;
    }

    public void setEvent10Publisher(EventPublisher<Event10> event10Publisher) {
        this.event10Publisher = event10Publisher;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
